package com.swmutil.swmutil.util;

import com.alibaba.fastjson2.JSONObject;
import com.swmutil.swmutil.MasterController;
import javafx.scene.control.MenuBar;
import javafx.stage.Stage;

import java.text.SimpleDateFormat;
import java.util.ArrayList;


public class StaParas {

    public static Stage stage;
    public static String titleName="CL_画中画界面生成软件";
    //顶部菜单栏
    public static MenuBar menuBar;
    //项目路径
    public static String folderPath;

    //周工工程路径
    public static String zgProPath;

    public static MasterController masterController = new MasterController();
    //主页图片路径
    public static String absolutePath;
    //最后选择图片打开得路径
    public static String lastPath;
    //当前页面名称
    public static String currentPage = "MP1";
    //当前元素类型
    public static String currentEleType = null;

    //当前元素名称
    public static String currentEleName = null;

    //单机的元素类型
    public static String selectEleType = null;
    //单机的元素名
    public static String selectEleName = null;

    //界面单机选中元素键盘移动
    public static JSONObject moveElePane = new JSONObject();

    //当前页面操作的图标JsonObject
    public static JSONObject iconJson = new JSONObject();

    //当前页面操作的指针JsonObject
    public static JSONObject pointerJson = new JSONObject();

    //当前页面操作的进度条JsonObject
    public static JSONObject progressBarJson = new JSONObject();

    //当前页面操作的文本JsonObject
    public static JSONObject textJson = new JSONObject();

    //当前页面操作的按钮JsonObject
    public static JSONObject btnJson = new JSONObject();

    //当前页面操作的摄像头JsonObject
    public static JSONObject cameraJson = new JSONObject();

    //当前页面操作的lableJsonObject
    public static JSONObject lableJson = new JSONObject();

    //当前页面操作的元素elementJsonObject
    public static JSONObject elementJson = new JSONObject();

    //当前页面操作的线条lineJsonObject
    public static JSONObject lineJson = new JSONObject();

    //当前页面操作的小背景JsonObject
    public static JSONObject littleBackJson = new JSONObject();

    //是否处于设置指针中心点状态
    public static boolean isSetPointerCenter = false;

    //统一图标宽高全局变量
    public static JSONObject iconStaticJson = new JSONObject();

    //统一指针宽高全局变量
    public static JSONObject pointerStaticJson = new JSONObject();
    //统一进度条宽高全局变量
    public static JSONObject progressBarStaticJson = new JSONObject();
    //统一文本宽高全局变量
    public static JSONObject textStaticJson = new JSONObject();

    //显示方式 0以左上为基点显示  1固定宽高显示  2对父对象居中显示  其他 待添加
    public static ArrayList<String> disfisArray = new ArrayList<>();
    //暂时先这么多字体  在上位机上再添加几个备用
    public static ArrayList<String> txt_font_Array = new ArrayList<>();
    //文本对齐方式
    public static ArrayList<String> txt_zzy_Array = new ArrayList<>();
    //触摸键盘 模式  0 1 2 3   其他默认0
    public static ArrayList<String> rkey_mode_Array = new ArrayList<>();
    //元素显示选项
    public static ArrayList<String> ele_txt_Array = new ArrayList<>();

    //其他设置页面的 主题标志
    public static JSONObject theme_flag_json = new JSONObject();

    //全局时间处理
    public static SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddhhmmss");

    public static String mark1=":";
    static {
        iconStaticJson.put("width", 100);
        iconStaticJson.put("height", 100);
        pointerStaticJson.put("width", 50);
        pointerStaticJson.put("height", 100);
        progressBarStaticJson.put("width", 96);
        progressBarStaticJson.put("height", 20);
        textStaticJson.put("width", 100);
        textStaticJson.put("height", 100);

        disfisArray.add("以左上为基点显示");
        disfisArray.add("固定宽高显示");
        disfisArray.add("对父对象居中显示");
        disfisArray.add("指定宽高折行显示");
        disfisArray.add("密码显示");
        disfisArray.add("备用5");
        disfisArray.add("备用6");
        disfisArray.add("备用7");

        txt_font_Array.add("CN_20_");
        txt_font_Array.add("CN_24_");
        txt_font_Array.add("CN_28_");
        txt_font_Array.add("EN_12_");
        txt_font_Array.add("EN_16_");
        txt_font_Array.add("EN_20_");
        txt_font_Array.add("EN_24_");
        txt_font_Array.add("EN_28_");
        txt_font_Array.add("EN_32_");
        txt_font_Array.add("SU_48_");
        txt_font_Array.add("SU_24_");
        txt_font_Array.add("SU_24_2");
        txt_font_Array.add("13");
        txt_font_Array.add("14");
        txt_font_Array.add("15");
        txt_font_Array.add("16");
        txt_font_Array.add("17");
        txt_font_Array.add("18");
        txt_font_Array.add("19");
        txt_font_Array.add("20");

        txt_zzy_Array.add("左对齐");
        txt_zzy_Array.add("居中");
        txt_zzy_Array.add("居右");
        txt_zzy_Array.add("自动");

        rkey_mode_Array.add("显示小写字母");
        rkey_mode_Array.add("显示大写字母");
        rkey_mode_Array.add("显示特殊字符");
        rkey_mode_Array.add("+ /-号和小数点");

        ele_txt_Array.add("选项1");
        ele_txt_Array.add("选项2");
        ele_txt_Array.add("选项3");

        theme_flag_json.put("LV_THEME_MATERIAL_FLAG_DARK", "0x01");
        theme_flag_json.put("LV_THEME_MATERIAL_FLAG_LIGHT", "0x02");
        theme_flag_json.put("LV_THEME_MATERIAL_FLAG_NO_TRANSITION", "0x10");
        theme_flag_json.put("LV_THEME_MATERIAL_FLAG_NO_FOCUS", "0x20");
    }

    public static void reNewEle() {
        iconJson = new JSONObject();
        pointerJson = new JSONObject();
        progressBarJson = new JSONObject();
        textJson = new JSONObject();
        btnJson = new JSONObject();
        cameraJson = new JSONObject();

        littleBackJson = new JSONObject();
        lableJson = new JSONObject();
        elementJson = new JSONObject();
        lineJson = new JSONObject();


        currentEleType = null;
        currentEleName = null;
    }
}
